﻿YUI.add('curso-list-view', function (Y) {
    Y.CursosView = Y.Base.create('CursosView', Y.View, [], {
        loadTemplate: function () {
            if (this.template == '') {
                var that = this,
                request = Y.io('/ExcellentProject/scripts/views/calificaciones/cursos/templates/cursos.html', {
                    on: {
                        complete: function (id, response) {
                            that.templateIsCharged = true;
                            that.template = response.responseText;
                            try {
                                $('#table_id').parent().replaceWith('');
                            }
                            catch (err) {
                                console.log(err);
                            }
                            that.render();
                        },
                        failure: function (id, response) {
                            alert(response, 'Error al cargar Cursos')
                        }

                    }
                })
            }
        },
        render: function () {
            this.loadTemplate();
            if (this.templateIsCharged) {
                this.get('container').setHTML(this.template);
                var list = this.get('modelList');
                var table = $('#table_id').DataTable({
                    "language": {
                        "search": "Buscar:",
                        "lengthMenu": "Items por página: _MENU_",
                        "info": "Items del _START_ al _END_ de _TOTAL_ items.",
                        "emptyTable": "Items no disponibles.",
                        "infoEmpty": "0 ítems.",
                        "paginate": {
                            "next": "Siguiente",
                            "previous": "Anterior",
                            "first": "Primero",
                            "last": "Ultimo"
                        }
                    },
                    "paging": true,
                    retrieve: true,
                    data: list.toJSON(),
                    "rowCallback": function (row, aData) {
                        $('td:eq(7)', row).html('<a title="Editar" class="btn btn-warning" href="/cursos/' + aData.IdCurso + '">' +
                         '<i class="fa fa-pencil">' + '</i>' + '<span class="tooltip"></span></a>');
                        $('td:eq(8)', row).html('<a title="Eliminar" class="btn btn-danger" href="/cursos/eliminar/' + aData.IdCurso + '" >' +
                       '<i class="fa fa-trash-o">' + '</i>' + '<span class="tooltip"></span></a>');
                    },
                    columns: [
                        { data: 'NombreCurso' },
                        { data: 'Descripcion' },
                        { data: 'Estado' },
                        { data: 'Docente' },
                        { data: 'Periodo' },
                        { data: 'FechaInicio' },
                        { data: 'FechaFin' },
                        { data: 'IdCurso' },
                        { data: 'IdCurso' }
                    ]
                });
                table.draw();
            }
        }
    })
}, '0.0.0.1', {
    requires: ['view', 'curso-consulta-model-list', 'curso-consulta-model', 'io', 'handlebars',
        'editar-curso-view']
})